#pragma once
#include "primitive.h"
#include "Point3d.h"

class CPlane : public CPrimitive
{
public:
	CPlane(void);
	CPlane(const CPoint3D& Point, const CPoint3D& Normal);
	~CPlane(void);
	void SetPoint(CPoint3D& point);
	void SetNormal(CPoint3D& normal);

	CPoint3D& GetPoint();
	CPoint3D& GetNormal();

	virtual float Intersect(CRay& ray, CPoint3D& intersection, CPoint3D& normal);
protected:
	CPoint3D Normal;
	CPoint3D Point;
};
